# 假设 len 是之前通过位操作得到的 16 位整数
# len_value = 1452  # 假设这是之前计算得到的 len 值


def get_len_by_value(len_value):
    # 获取第一个字节（高位字节）
    first_byte = (len_value >> 8) & 0xFF

    # 获取第二个字节（低位字节）
    second_byte = len_value & 0xFF

    # 注意：这里我们并没有真正地“获取”msg_recv[2:3]和msg_recv[3:4]，
    # 我们只是重新计算了这两个字节的值。

    # 如果您想要将这些字节值转换为字节序列，可以使用 bytes() 函数或 bytearray()
    first_byte_sequence = bytes([first_byte])
    second_byte_sequence = bytes([second_byte])

    # 或者，如果您想要将它们组合成一个两个字节的字节序列
    combined_bytes = bytes([first_byte, second_byte])
    return combined_bytes


import struct
def get_time(s_data,ms_data):
    # 假设 s_data 和 ms_data 已经给出
    # 注意：这里的 ms_data_original 是假设我们从某个地方得到了没有经过四舍五入和除法的原始 ms_data 值
    ms_data_original = ms_data * 2 ** 32 // 1000  # 尝试恢复原始值，但可能不准确

    # 将 s_data 转换为字节序列
    s_data_bytes = struct.pack('>I', s_data)

    # 将 ms_data_original 转换为字节序列（注意：这里我们假设 ms_data_original 是准确的）
    ms_data_bytes = struct.pack('>I', ms_data_original)

    # print(s_data_bytes,ms_data_bytes)
    # print(len(s_data_bytes),len(ms_data_bytes))
    return s_data_bytes,ms_data_bytes
# get_time(3909198176,633)